const express = require("express")
const router = express.Router()
const user_handle = require("../router_handle/user")
const qiniu = require("qiniu")

//用户模块
// 1.1用户注册模块 （passing）
router.post("/user/register", user_handle.user_Register)
// 1.2用户登录模块  (passing)
router.post("/user/login", user_handle.user_Login)
// 1.3用户忘记密码模块
router.post("/user/forget", user_handle.user_Forget)
// 1.4用户登录成功后展示该用户的名字
router.get("/user/display", user_handle.user_Displsy)
// 1.5 用户修改自己资料卡(暂时用post))
router.post("/user/alteruser", user_handle.user_Alter)
// 管理员模块
// 1.1 管理员注册模块（passing）
router.post("/admin/register", user_handle.admin_Register)
// 1.2 管理员登录模块（passing）
router.post("/admin/login", user_handle.admin_login)
// 1.3 管理员忘记密码模块
router.post("/admin/forget", user_handle.admin_Forget)
// 1.4 管理端获取所有用户信息
router.get("/admin/getuser", user_handle.admin_Getuser)
// 1.5管理员封禁和解封用户(先用post开发)
router.post("/admin/userpower", user_handle.admin_Userpower)
// 1.6管理员搜索用户模块
router.get("/admin/searchuser", user_handle.admin_Sreachuser)
// 1.7 管理员删除用户
router.post("/admin/deleteuser", user_handle.admin_deleteUser)

// 相册模块
// 1.1 创建相册模块（passing）
router.post("/album/createalbum", user_handle.create_Album)
// 1.2 搜索一个用户的所有相册（passing）
router.get("/album/whoalbum", user_handle.search_userAlbum)
// 1.3搜素相册模块
router.get("/album/searchalbum", user_handle.search_Album)
// 1.4 删除相册模块（passing）（预留问题：相片也要删除）
router.post("/album/deletealbum", user_handle.delete_Album)

// 相片模块
// 1.1 进入某一个相册展示该相册下的所有照片
router.get("/album/selectalbumid", user_handle.select_albumid)

// 1.2 删除相片

// 生成七牛云token模块
// 1.0
let config = {
  AK: "cqudK337xT8g3VyX3FZfxzXEhhe4qAnb0Gb3sOut",
  SK: "OVEXGArrs6WXLlcu-9HZDMHoxMUkWgNaFIWccr1l",
  Bucket: "yyx-photo-system",
}

router.post("/token", async (ctx, next) => {
  let mac = new qiniu.auth.digest.Mac(config.AK, config.SK)
  let code = "1",
    msg = "",
    data = {}
  let options = {
    scope: config.Bucket,
    expires: 3600 * 24,
  }
  let putPolicy = new qiniu.rs.PutPolicy(options)
  let uploadToken = putPolicy.uploadToken(mac)
  if (uploadToken) {
    console.log(uploadToken)
    code = "0"
    data.uploadToken = uploadToken
    ctx.body = { code, data, msg }
  } else {
    ctx.body = { code, data, msg }
  }
})

// 2.0
// 这是一个全局的配置文件

// 创建上传凭证
// const accessKey = "cqudK337xT8g3VyX3FZfxzXEhhe4qAnb0Gb3sOut"
// const secretKey = "OVEXGArrs6WXLlcu-9HZDMHoxMUkWgNaFIWccr1l"
// const bucket = "yyx-photo-system"

// router.post("/token", async (ctx, next) => {
//   let mac = new qiniu.auth.digest.Mac(accessKey, secretKey)
//   let options = {
//     scope: bucket,
//     expires: 3600 * 24,
//   }
//   let putPolicy = new qiniu.rs.PutPolicy(options)
//   let uploadToken = putPolicy.uploadToken(mac)
//   if (uploadToken) {
//     console.log(uploadToken)
//     // ctx.body = Code("re_success", uploadToken)
//   } else {
//     ctx.body = Code("re_error")
//   }
// })

module.exports = router
